package com.example.navigation_bar.Home;

import android.os.Bundle;

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;

import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

import com.example.navigation_bar.R;

/**
 * 一个简单的{@linkFragment}子类。
 * 使用｛@link MineFragment#newInstance｝工厂方法
 * 创建这个片段的一个实例。
 */
public class HomeFragment extends Fragment {

    public HomeFragment() {
        // 必需的空公共构造函数
    }
    /**
     * 当Fragment被首次创建时调用。这是你应该初始化Fragment的任何成员变量的地方。
     * 调用以进行片段的初始创建。这是在onAttach（Activity）之后和onCreateView（LayoutInflater、ViewGroup、Bundle）之前调用的。
     * 请注意，这可以在片段的活动仍处于创建过程中时调用。因此，您不能依赖于在这一点上初始化活动的内容视图层次结构之类的东西。
     * 如果您想在创建活动本身后进行工作，请添加androidx.lifecycle。Lifecycle观察活动的生命周期，在收到androidx.Lifecycle时将其删除。生命周期。状态CREATED回调。
     * 任何还原的子片段都将在基本Fragment.onCreate方法返回之前创建。
     * @param savedInstanceState 如果片段是从以前保存的状态重新创建的，则为该状态。
     */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    }
    /**
     * 当Fragment要创建其用户界面时调用。这个方法返回的View就是Fragment的布局。
     * 调用以使片段实例化其用户界面视图。这是可选的，非图形片段可以返回null。这将在onCreate（Bundle）和onViewCreated（View，Bundle）之间调用。
     * 默认视图可以通过调用构造函数中的Fragment（int）返回。否则，此方法将返回null。
     * 建议在此方法中仅膨胀布局，并将对返回的View进行操作的逻辑移动到onViewCreated（View，Bundle）。
     * 如果您从这里返回一个视图，稍后在视图发布时，您将在onDestroyView中被调用。
     * @param inflater LayoutInflater，可用于对片段中的任何视图进行充气，
     * @param container 如果非null，这是片段的UI应该附加到的父视图。片段不应该添加视图本身，但这可以用于生成视图的LayoutParams。
     * @param savedInstanceState 如果不为null，则表示该片段是根据此处给出的先前保存的状态重新构建的。
     * @return 返回片段的UI的视图，或者为null。
     */
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        // 使用LayoutInflater来加载fragment_mine的布局文件
        return inflater.inflate(R.layout.fragment_home, container, false);
    }
    /**
     * 返回的View被加载到父容器中后调用。你可以在这个方法中安全地进行与View相关的操作。
     * 视图创建后执行  使用onViewCreated（View，Bundle）进行代码访问Fragment的视图
     * 在onCreateView（LayoutInflater、ViewGroup、Bundle）返回之后，
     * 但在任何保存的状态恢复到视图之前立即调用。这给了子类一个机会，
     * 一旦它们知道自己的视图层次结构已经完全创建，就可以对自己进行初始化。
     * 但是，此时片段的视图层次结构并没有附加到其父级。
     * @param view 返回的视图 by {@link #onCreateView(LayoutInflater, ViewGroup, Bundle)}.
     * @param savedInstanceState 如果不是null，则正在重新构建此片段
     * 从这里给出的先前保存的状态。
     */
    @Override
    public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);
    }
}